import Vue from 'vue'
import VueRouter from 'vue-router'
import Login from '../components/Login.vue'
import Home from '../components/Home.vue'
import Welcome from '../components/Welcome.vue'
import Users from '../components/user/Users.vue'
import Right from '../components/power/Right.vue'
import Roles from '../components/power/Roles.vue'




Vue.use(VueRouter)


const router = new VueRouter({
  routes: [
    {
      path: '/',
      redirect: '/login'
    },
    {
      path: '/login',
      component: Login
     },
     {
       path: '/home',
       component: Home,
       redirect: '/welcome',
       children:[
         {
           path: '/welcome',
           component: Welcome
         },
         {
           path:'/users',
           component: Users
         },
         {
           path: '/rights',
           component: Right
         },
         {
          path: '/roles',
          component: Roles
        }
       ]
     }
   ]
})

//挂在路由导航守卫
router.beforeEach((to, from, next) => {
  //next表示放行,或者跳转其他位置强制
  if(to.path === '/login') return next()
  //获取token值
  const tokenStr = window.sessionStorage.getItem('token')
  //注意next能记录以前能放行的, 但不能给与其新的值(前面所没有放行的值)
  if(!tokenStr) return next ('/login') 
  next()
})

export default router
